import { request } from './http';
import type { Protocol, PageQuery } from './types';

/**
 * 产品输出信息接口
 */
export interface Product {
  id?: number; // 自增主键id
  regionId?: number; // 区域ID
  regionLevel?: number; // 区域级别
  placeId?: string; // Google place id
  placeName?: string; // 地点名称
  networkType?: string; // 网络接入类型：Global Internet Access、Point-To-Point Connectivity、Cloud and DC Interconnect
  productType?: string; // 产品类型：精品网、CN2专线、SDIA
  carrierType?: string; // 运营商类型：移动、电信、联通
  bandwidth?: string; // 宽带速率
  freeIp?: number; // 免费IP个数
  nrc?: number; // 一次性费用:Non-Recurring Charge
  monthlyRent?: number; // 宽带月租
  ip30MonthlyRent?: number; // /30 IP地址的月租价格
  ip29MonthlyRent?: number; // /29 IP地址的月租价格
  cpeMonthlyRent?: number; // CPE月租价格
  sla?: string; // SLA
  remark?: string; // 备注
  modifiedUser?: string; // 修改人
  isDel?: number; // 删除状态 0：未删除，1：删除
  createdAt?: string; // 创建时间
  modifiedAt?: string; // 修改时间
}

export function findProduct(query: PageQuery): Promise<Protocol<Product[]>> {
  return request.get<Protocol<Product[]>>(`/api/product/find`, query);
}

export function findMaxLevelProduct(query: PageQuery): Promise<Protocol<Product[]>> {
  return request.get<Protocol<Product[]>>(`/api/product/max/level`, query);
}
